CONTENTS | INDEX | PREV | NEXT
   
 FUNCTION
 Generate Romable Image
   
 SYNOPSIS
 Romable exeFile -o outFile [-o out2] -C addr -D addr  -pi
   
 DESCRIPTION
 Romable takes an executable compiled by DICE, and generates a binary
 image.  This is normally used to generate a file for programming into
 ROM.
   
 exeFile  input executable linked with dlink
   
 -o outFile
     output binary (unformatted -- raw).  If TWO -o options are
     specified the two output files will have even bytes and odd bytes
     respectively, which is what you need when you must program two
     eproms (one on the LSB data lines and one on the MSB data lines).
   
 -C addr  code start address, 0octal, decimal, or 0xHEX
   
 -D addr  data start address, 0octal, decimal, or 0xHEX
   
    -DC  place actual data+bss just after code (i.e.  the result is
     intended to be downloaded into RAM, there is no duplicate data in
     this case). '-D addr' is not specified in this case
   
    -pi  generate a position independent module.  Neither -C or -D are
     specified in this case, and Romable will warn you have any
     absolute references.
   
     Note that your custom startup code determines how much of
     __autoinit and __autoexit is to be supported.  Note especially
     that __autoinit0 MUST BE SUPPORTED because DICE will generate
     __autoinit0 sections to handle 32 bit data relocations run-time.
   
     Romable generates a raw output file or files with the EPROM code
     first, and initialized data after the main code (still in EPROM)
     which, as has already been described, will be copied to RAM on
     reset by your startup routine.

     This startup-copying of initialized data and clearing of BSS
     makes it extremely easy to use DICE to generate ROMED
     applications without having to deal with major porting
     considerations.